package com.hx.setting.model;

import com.hx.setting.model.UsersModel.UsersTableField;

/**
 * -- ==== --
 * CREATE TABLE `hx_users` (
 * `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
 * `user_name` varchar(255) DEFAULT NULL,
 * `user_password` varchar(200) DEFAULT NULL,
 * `first_name` varchar(30) DEFAULT NULL,
 * `last_name` varchar(30) DEFAULT NULL,
 * `reports_to_id` varchar(36) DEFAULT NULL,
 * `is_admin` varchar(3) DEFAULT '0',
 * `description` text,
 * `date_entered` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
 * `date_modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
 * `modified_user_id` varchar(36) DEFAULT NULL,
 * `position` varchar(50) DEFAULT NULL,
 * `department` varchar(50) DEFAULT NULL,
 * `phone_home` varchar(50) DEFAULT NULL,
 * `phone_mobile` varchar(50) DEFAULT NULL,
 * `phone_work` varchar(50) DEFAULT NULL,
 * `phone_other` varchar(50) DEFAULT NULL,
 * `phone_fax` varchar(50) DEFAULT NULL,
 * `email1` varchar(100) DEFAULT NULL,
 * `email2` varchar(100) DEFAULT NULL,
 * `status` varchar(25) DEFAULT NULL,
 * `signature` text,
 * `address_street` varchar(150) DEFAULT NULL,
 * `address_city` varchar(100) DEFAULT NULL,
 * `address_state` varchar(100) DEFAULT NULL,
 * `address_country` varchar(25) DEFAULT NULL,
 * `address_postalcode` varchar(9) DEFAULT NULL,
 * `user_preferences` text,
 * `weekstart` int(11) DEFAULT NULL,
 * `date_format` varchar(200) DEFAULT NULL,
 * `hour_format` varchar(30) DEFAULT 'am/pm',
 * `start_hour` varchar(30) DEFAULT '10:00',
 * `end_hour` varchar(30) DEFAULT '23:00',
 * `activity_view` varchar(200) DEFAULT 'Today' COMMENT 'This view, Today, this month, this year',
 * `lead_view` varchar(200) DEFAULT 'Today' COMMENT 'Today, Last 2 days, Last week, leads infomation item shows.',
 * `imagename` varchar(250) DEFAULT NULL,
 * `deleted` int(11) NOT NULL DEFAULT '0',
 * `confirm_password` varchar(300) DEFAULT NULL,
 * `internal_mailer` varchar(3) NOT NULL DEFAULT '1',
 * `reminder_interval` varchar(100) DEFAULT NULL COMMENT '提醒间隔',
 * `reminder_next_time` varchar(100) DEFAULT NULL COMMENT '下次提醒时间',
 * `crypt_type` varchar(20) NOT NULL DEFAULT 'MD5',
 * `accesskey` varchar(36) DEFAULT NULL,
 * `theme` varchar(100) DEFAULT NULL,
 * `language` varchar(36) DEFAULT NULL,
 * `time_zone` varchar(200) DEFAULT NULL,
 * `currency_grouping_pattern` varchar(100) DEFAULT NULL,
 * `currency_decimal_separator` varchar(2) DEFAULT NULL,
 * `currency_grouping_separator` varchar(2) DEFAULT NULL,
 * `currency_symbol_placement` varchar(20) DEFAULT NULL,
 * `no_of_currency_decimals` varchar(2) DEFAULT NULL,
 * PRIMARY KEY (`id`),
 * KEY `user_user_name_idx` (`user_name`),
 * KEY `user_user_password_idx` (`user_password`)
 * ) ENGINE=InnoDB DEFAULT CHARSET=utf8
 * -- ==== --
 * Generate Date : 2014-03-16
 * Generate Version : v3.0
 * Generate Name : Honey v3.1 Test
 * Generate User : THINK
 * JDK Version : 1.5
 */
public final class UsersModel extends GeneratedCriteria<UsersModel, UsersTableField>
{

	public static final String	TABLE_NAME		= "hx_users";

	public static final String	DATABASE_VENDOR	= "Mysql-5.5";

	/**
	 * 
	 * 数据库字段枚举
	 */
	public enum UsersTableField implements TableField
	{
		/** 
		 * 主键
		 */
		ID( new String[]
		{ "id", "id", "主键 " } ),
		/** 
		 * userName
		 */
		USERNAME( new String[]
		{ "user_name", "userName", "userName" } ),
		/** 
		 * userPassword
		 */
		USERPASSWORD( new String[]
		{ "user_password", "userPassword", "userPassword" } ),
		/** 
		 * firstName
		 */
		FIRSTNAME( new String[]
		{ "first_name", "firstName", "firstName " } ),
		/** 
		 * lastName
		 */
		LASTNAME( new String[]
		{ "last_name", "lastName", "lastName " } ),
		/** 
		 * reportsToId
		 */
		REPORTSTOID( new String[]
		{ "reports_to_id", "reportsToId", "reportsToId " } ),
		/** 
		 * isAdmin
		 */
		ISADMIN( new String[]
		{ "is_admin", "isAdmin", "isAdmin " } ),
		/** 
		 * description
		 */
		DESCRIPTION( new String[]
		{ "description", "description", "description " } ),
		/** 
		 * dateEntered
		 */
		DATEENTERED( new String[]
		{ "date_entered", "dateEntered", "dateEntered " } ),
		/** 
		 * dateModified
		 */
		DATEMODIFIED( new String[]
		{ "date_modified", "dateModified", "dateModified " } ),
		/** 
		 * modifiedUserId
		 */
		MODIFIEDUSERID( new String[]
		{ "modified_user_id", "modifiedUserId", "modifiedUserId " } ),
		/** 
		 * position
		 */
		POSITION( new String[]
		{ "position", "position", "position " } ),
		/** 
		 * department
		 */
		DEPARTMENT( new String[]
		{ "department", "department", "department " } ),
		/** 
		 * phoneHome
		 */
		PHONEHOME( new String[]
		{ "phone_home", "phoneHome", "phoneHome " } ),
		/** 
		 * phoneMobile
		 */
		PHONEMOBILE( new String[]
		{ "phone_mobile", "phoneMobile", "phoneMobile " } ),
		/** 
		 * phoneWork
		 */
		PHONEWORK( new String[]
		{ "phone_work", "phoneWork", "phoneWork " } ),
		/** 
		 * phoneOther
		 */
		PHONEOTHER( new String[]
		{ "phone_other", "phoneOther", "phoneOther " } ),
		/** 
		 * phoneFax
		 */
		PHONEFAX( new String[]
		{ "phone_fax", "phoneFax", "phoneFax " } ),
		/** 
		 * email1
		 */
		EMAIL1( new String[]
		{ "email1", "email1", "email1 " } ),
		/** 
		 * email2
		 */
		EMAIL2( new String[]
		{ "email2", "email2", "email2 " } ),
		/** 
		 * status
		 */
		STATUS( new String[]
		{ "status", "status", "status " } ),
		/** 
		 * signature
		 */
		SIGNATURE( new String[]
		{ "signature", "signature", "signature " } ),
		/** 
		 * addressStreet
		 */
		ADDRESSSTREET( new String[]
		{ "address_street", "addressStreet", "addressStreet " } ),
		/** 
		 * addressCity
		 */
		ADDRESSCITY( new String[]
		{ "address_city", "addressCity", "addressCity " } ),
		/** 
		 * addressState
		 */
		ADDRESSSTATE( new String[]
		{ "address_state", "addressState", "addressState " } ),
		/** 
		 * addressCountry
		 */
		ADDRESSCOUNTRY( new String[]
		{ "address_country", "addressCountry", "addressCountry " } ),
		/** 
		 * addressPostalcode
		 */
		ADDRESSPOSTALCODE( new String[]
		{ "address_postalcode", "addressPostalcode", "addressPostalcode " } ),
		/** 
		 * userPreferences
		 */
		USERPREFERENCES( new String[]
		{ "user_preferences", "userPreferences", "userPreferences " } ),
		/** 
		 * weekstart
		 */
		WEEKSTART( new String[]
		{ "weekstart", "weekstart", "weekstart " } ),
		/** 
		 * dateFormat
		 */
		DATEFORMAT( new String[]
		{ "date_format", "dateFormat", "dateFormat " } ),
		/** 
		 * hourFormat
		 */
		HOURFORMAT( new String[]
		{ "hour_format", "hourFormat", "hourFormat " } ),
		/** 
		 * startHour
		 */
		STARTHOUR( new String[]
		{ "start_hour", "startHour", "startHour " } ),
		/** 
		 * endHour
		 */
		ENDHOUR( new String[]
		{ "end_hour", "endHour", "endHour " } ),
		/** 
		 * This view, Today, this month, this year
		 */
		ACTIVITYVIEW( new String[]
		{ "activity_view", "activityView", "This view, Today, this month, this year " } ),
		/** 
		 * Today, Last 2 days, Last week, leads infomation item shows.
		 */
		LEADVIEW( new String[]
		{ "lead_view", "leadView", "Today, Last 2 days, Last week, leads infomation item shows. " } ),
		/** 
		 * imagename
		 */
		IMAGENAME( new String[]
		{ "imagename", "imagename", "imagename " } ),
		/** 
		 * deleted
		 */
		DELETED( new String[]
		{ "deleted", "deleted", "deleted " } ),
		/** 
		 * confirmPassword
		 */
		CONFIRMPASSWORD( new String[]
		{ "confirm_password", "confirmPassword", "confirmPassword" } ),
		/** 
		 * internalMailer
		 */
		INTERNALMAILER( new String[]
		{ "internal_mailer", "internalMailer", "internalMailer " } ),
		/** 
		 * 提醒间隔
		 */
		REMINDERINTERVAL( new String[]
		{ "reminder_interval", "reminderInterval", "提醒间隔 " } ),
		/** 
		 * 下次提醒时间
		 */
		REMINDERNEXTTIME( new String[]
		{ "reminder_next_time", "reminderNextTime", "下次提醒时间 " } ),
		/** 
		 * cryptType
		 */
		CRYPTTYPE( new String[]
		{ "crypt_type", "cryptType", "cryptType " } ),
		/** 
		 * accesskey
		 */
		ACCESSKEY( new String[]
		{ "accesskey", "accesskey", "accesskey " } ),
		/** 
		 * theme
		 */
		THEME( new String[]
		{ "theme", "theme", "theme " } ),
		/** 
		 * language
		 */
		LANGUAGE( new String[]
		{ "language", "language", "language " } ),
		/** 
		 * timeZone
		 */
		TIMEZONE( new String[]
		{ "time_zone", "timeZone", "timeZone " } ),
		/** 
		 * currencyGroupingPattern
		 */
		CURRENCYGROUPINGPATTERN( new String[]
		{ "currency_grouping_pattern", "currencyGroupingPattern", "currencyGroupingPattern " } ),
		/** 
		 * currencyDecimalSeparator
		 */
		CURRENCYDECIMALSEPARATOR( new String[]
		{ "currency_decimal_separator", "currencyDecimalSeparator", "currencyDecimalSeparator " } ),
		/** 
		 * currencyGroupingSeparator
		 */
		CURRENCYGROUPINGSEPARATOR( new String[]
		{ "currency_grouping_separator", "currencyGroupingSeparator", "currencyGroupingSeparator " } ),
		/** 
		 * currencySymbolPlacement
		 */
		CURRENCYSYMBOLPLACEMENT( new String[]
		{ "currency_symbol_placement", "currencySymbolPlacement", "currencySymbolPlacement " } ),
		/** 
		 * noOfCurrencyDecimals
		 */
		NOOFCURRENCYDECIMALS( new String[]
		{ "no_of_currency_decimals", "noOfCurrencyDecimals", "noOfCurrencyDecimals " } );

		/** 数据库字段名称 */
		private final String	value;

		/** 映射到java属性名称 */
		private final String	property;

		/** 数据库字段注释 */
		private final String	show;

		/** 
		 * 
		 * @param  value {@code   String}
		 * 
		 * @see    String
		 */
		private UsersTableField(String args[])
		{
			this.value = args[0];
			this.property = args[1];
			this.show = args[2];
		}

		public static final UsersTableField getInstance(String property)
		{
			UsersTableField answer = null;
			if ( property != null )
			{
				int hash = property.hashCode();
				switch ( hash )
				{
					case 3355 : //id,主键 
						answer = ID;
						break;
					case -266666762 : //userName,userName
						answer = USERNAME;
						break;
					case 449056646 : //userPassword,userPassword
						answer = USERPASSWORD;
						break;
					case 132835675 : //firstName,firstName 
						answer = FIRSTNAME;
						break;
					case -1459599807 : //lastName,lastName 
						answer = LASTNAME;
						break;
					case -229035179 : //reportsToId,reportsToId 
						answer = REPORTSTOID;
						break;
					case 2054074437 : //isAdmin,isAdmin 
						answer = ISADMIN;
						break;
					case -1724546052 : //description,description 
						answer = DESCRIPTION;
						break;
					case -396884503 : //dateEntered,dateEntered 
						answer = DATEENTERED;
						break;
					case 2071840919 : //dateModified,dateModified 
						answer = DATEMODIFIED;
						break;
					case 203104879 : //modifiedUserId,modifiedUserId 
						answer = MODIFIEDUSERID;
						break;
					case 747804969 : //position,position 
						answer = POSITION;
						break;
					case 848184146 : //department,department 
						answer = DEPARTMENT;
						break;
					case -1029357715 : //phoneHome,phoneHome 
						answer = PHONEHOME;
						break;
					case -1227460688 : //phoneMobile,phoneMobile 
						answer = PHONEMOBILE;
						break;
					case -1028910689 : //phoneWork,phoneWork 
						answer = PHONEWORK;
						break;
					case -1838709182 : //phoneOther,phoneOther 
						answer = PHONEOTHER;
						break;
					case -1280133425 : //phoneFax,phoneFax 
						answer = PHONEFAX;
						break;
					case -1299765227 : //email1,email1 
						answer = EMAIL1;
						break;
					case -1299765226 : //email2,email2 
						answer = EMAIL2;
						break;
					case -892481550 : //status,status 
						answer = STATUS;
						break;
					case 1073584312 : //signature,signature 
						answer = SIGNATURE;
						break;
					case -740159209 : //addressStreet,addressStreet 
						answer = ADDRESSSTREET;
						break;
					case -1377792129 : //addressCity,addressCity 
						answer = ADDRESSCITY;
						break;
					case 253202685 : //addressState,addressState 
						answer = ADDRESSSTATE;
						break;
					case 1369618690 : //addressCountry,addressCountry 
						answer = ADDRESSCOUNTRY;
						break;
					case -1144232884 : //addressPostalcode,addressPostalcode 
						answer = ADDRESSPOSTALCODE;
						break;
					case -390406611 : //userPreferences,userPreferences 
						answer = USERPREFERENCES;
						break;
					case -2086863634 : //weekstart,weekstart 
						answer = WEEKSTART;
						break;
					case 155244869 : //dateFormat,dateFormat 
						answer = DATEFORMAT;
						break;
					case 230088443 : //hourFormat,hourFormat 
						answer = HOURFORMAT;
						break;
					case -2129646234 : //startHour,startHour 
						answer = STARTHOUR;
						break;
					case -1607594657 : //endHour,endHour 
						answer = ENDHOUR;
						break;
					case 1628865108 : //activityView,This view, Today, this month, this year 
						answer = ACTIVITYVIEW;
						break;
					case 1560559649 : //leadView,Today, Last 2 days, Last week, leads infomation item shows. 
						answer = LEADVIEW;
						break;
					case -877396378 : //imagename,imagename 
						answer = IMAGENAME;
						break;
					case 1550463001 : //deleted,deleted 
						answer = DELETED;
						break;
					case -2078128773 : //confirmPassword,confirmPassword
						answer = CONFIRMPASSWORD;
						break;
					case 259682753 : //internalMailer,internalMailer 
						answer = INTERNALMAILER;
						break;
					case -357927081 : //reminderInterval,提醒间隔 
						answer = REMINDERINTERVAL;
						break;
					case 496055026 : //reminderNextTime,下次提醒时间 
						answer = REMINDERNEXTTIME;
						break;
					case 1597528520 : //cryptType,cryptType 
						answer = CRYPTTYPE;
						break;
					case -2115027333 : //accesskey,accesskey 
						answer = ACCESSKEY;
						break;
					case 110327241 : //theme,theme 
						answer = THEME;
						break;
					case -1613589672 : //language,language 
						answer = LANGUAGE;
						break;
					case -2077180903 : //timeZone,timeZone 
						answer = TIMEZONE;
						break;
					case -740011844 : //currencyGroupingPattern,currencyGroupingPattern 
						answer = CURRENCYGROUPINGPATTERN;
						break;
					case -242742075 : //currencyDecimalSeparator,currencyDecimalSeparator 
						answer = CURRENCYDECIMALSEPARATOR;
						break;
					case -720392943 : //currencyGroupingSeparator,currencyGroupingSeparator 
						answer = CURRENCYGROUPINGSEPARATOR;
						break;
					case 1027476444 : //currencySymbolPlacement,currencySymbolPlacement 
						answer = CURRENCYSYMBOLPLACEMENT;
						break;
					case 475597323 : //noOfCurrencyDecimals,noOfCurrencyDecimals 
						answer = NOOFCURRENCYDECIMALS;
						break;
				}
			}
			return answer;
		}

		/** 
		 * 获取数据库字段名称
		 * 
		 * @return {@code  Short}
		 */
		@Override
		public final String getValue()
		{
			return this.value;
		}

		/** 
		 * 获取映射对象属性名称
		 * 
		 * @return {@code  Short}
		 */
		@Override
		public final String getProperty()
		{
			return this.property;
		}

		/** 
		 * 获取字段显示名称(数据库字段注释)
		 * 
		 * @return {@code  String}
		 */
		@Override
		public final String getShow()
		{
			return this.show;
		}

		/** 
		 * 
		 * @return {@code  String}
		 */
		@Override
		public String toString()
		{
			return this.value;
		}
	}
}
/* Honey v3.1 Test - version:4 - OriginalChecksum:B1ab15c59cacce77354ea902d98a9a4f4 (do not edit this line) */
